本发明公开了一种具有多重密钥的数字图像零水印嵌入和提取方法,嵌入水印时其从原始数字图像自身不同的特征信息中构造出多重水印密钥,然后分别与待嵌入的实际数字水印相结合形成多重零水印信息后注册到数字水印信息数据库中,提取水印时是利用待测数字图像自身不同的特征信息中构造出多重水印密钥,再结合多重零水印信息实现提取;本发明不仅使得嵌入的数字水印处于多重保护之下,有效提高了数字水印的安全性,而且保证了原始数字图像的质量没有任何下降,同时充分结合和利用了各种变换域的特点,实现了具有优异鲁棒性能的抗常规图像处理攻击的数字水印嵌入和提取方法,因此很好地平衡了数字水印的鲁棒性和不可觉察性之间的矛盾。
1.一种具有多重密钥的数字图像零水印嵌入方法,其特征在于包括以下步骤:1-1、在零水印嵌入端,假设待嵌入数字水印的原始数字图像为8bit的灰度图像,记为F,F={0≤f(i,j)≤255,1≤i≤I,1≤j≤J},假设待嵌入的实际数字水印为一个二值图像,记为W,W={w(m,n)=0或1,1≤m≤M,1≤n≤N},其中,I表示待嵌入数字水印的原始数字图像F的竖直分辨率,J表示待嵌入数字水印的原始数字图像F的横向分辨率,I×J表示待嵌入数字水印的原始数字图像F的分辨率,f(i,j)表示待嵌入数字水印的原始数字图像F中坐标位置为(i,j)的像素的像素值,M表示待嵌入的实际数字水印W的竖直分辨率,N表示待嵌入的实际数字水印W的横向分辨率,M×N表示待嵌入的实际数字水印W的分辨率,w(m,n)表示待嵌入的实际数字水印W中坐标位置为(m,n)的像素的像素值;1-2、对待嵌入数字水印的原始数字图像F进行归一化处理,将归一化处理后得到的数字图像记为F",将F"中坐标位置为(i,j)的像素的像素值记为f"(i,j),f"(i,j)=f(i,j)/255;1-3、对归一化处理后得到的数字图像F"进行L级二维离散小波分解,得到一个第一小波逼近子图和多个第一小波细节子图,将第一小波逼近子图记为FA,其中,FA的分辨率为
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="292"/>
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="629"/>min()为取最小值函数,max()为取最大值函数,符号“
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="78"/>”表示取小于其自身的最大整数;1-4、对FA分别进行二维离散余弦变换、二维离散傅里叶变换和二维奇异值分解,对应获得第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S;1-5、对待嵌入的实际数字水印W进行置乱处理,得到置乱后的数字水印,记为W
R,然后将W
R分别与第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S结合,对应得到第一零水印信息、第二零水印信息和第三零水印信息,分别记为W
RC、W
RF和W
RS,W
RC=xor(W
R,W
C),W
RF=xor(W
R,W
F),W
RS=xor(W
R,W
S),再将第一零水印信息W
RC、第二零水印信息W
RF和第三零水印信息W
RS保存于注册机构的数字水印信息数据库中,完成实际数字水印W的嵌入,其中,xor()为异或运算函数;1-6、在零水印嵌入端,将实际数字水印W、第一零水印信息W
RC、第二零水印信息W
RF和第三零水印信息W
RS传输给零水印提取端。
2.根据权利要求1所述的一种具有多重密钥的数字图像零水印嵌入方法,其特征在于所述的步骤1-4中第一二值数字水印密钥W
C的获取过程为:a1、对FA进行二维离散余弦变换,得到一个与FA相同分辨率的第一二维离散余弦变换系数矩阵,记为FAC;b1、对FAC进行Zig-Zag扫描排列,得到一个第一一维离散余弦变换系数序列,记为FACS,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="700"/>其中,facs(x)表示FACS中的第x个离散余弦变换系数,FACS中的第2个离散余弦变换系数开始均为离散余弦变换交流系数;c1、根据待嵌入的实际数字水印W的分辨率,从FACS中顺序选取出满足第一设定条件的M×N个离散余弦变换交流系数,构成一个第一一维离散余弦变换交流系数序列,记为FACSN,FACSN={facsn(y),1≤y≤M×N},然后记录FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息,其中,facsn(y)表示FACSN中的第y个离散余弦变换交流系数,第一设定条件为使得构成的第一一维离散余弦变换交流系数序列FACSN中的任意相邻两个离散余弦变换交流系数的差值的绝对值大于或等于设定的第一差值阈值δ
C;d1、依次比较FACSN中的相邻两个离散余弦变换交流系数的大小,并根据比较结果返回逻辑值1或0,对于FACSN中的任意相邻两个离散余弦变换交流系数,将其分别记为facsn(z)和facsn(z+1),判断facsn(z)>facsn(z+1)是否成立,如果是,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FACSN中的最后一个离散余弦变换交流系数与第1个离散余弦变换交流系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e1、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第一二值数字水印密钥,记为W
C;f1、在零水印嵌入端,将记录的FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息传输给零水印提取端;所述的步骤1-4中第二二值数字水印密钥W
F的获取过程为:a2、对FA进行二维离散傅里叶变换,得到一个与FA相同分辨率的第一二维离散傅里叶变换频谱,记为FAF;b2、从FAF中提取出第一二维离散傅里叶变换幅度谱,记为FAA,FAA=abs(FAF),其中,abs()为求幅度函数;c2、对FAA进行Zig-Zag扫描排列,得到一个第一一维离散傅里叶变换幅度谱系数序列,记为FAAS,
FAAS = { faas ( x ) , 1 ≤ x ≤ ( L 2 L ) × ( J 2 L ) } , ]]>其中,faas(x)表示FAAS中的第x个离散傅里叶变换幅度谱系数;d2、根据待嵌入的实际数字水印W的分辨率,从FAAS中顺序选取出满足第二设定条件的M×N个离散傅里叶变换幅度谱系数,构成一个新的第一一维离散傅里叶变换幅度谱系数序列,记为FAASN,FAASN={faasn(y),1≤y≤M×N},然后记录FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息,其中,faasn(y)表示FAASN中的第y个离散傅里叶变换幅度谱系数,第二设定条件为使得构成的第一一维离散傅里叶变换幅度谱系数序列FAASN中的任意相邻两个离散傅里叶变换幅度谱系数的差值的绝对值大于或等于设定的第二差值阈值δ
F;e2、依次比较FAASN中的相邻两个离散傅里叶变换幅度谱系数的大小,并根据比较结果返回逻辑值1或0,对于FAASN中的任意相邻两个离散傅里叶变换幅度谱系数,将其分别记为faasn(z)和faasn(z+1),判断faasn(z)>faasn(z+1)是否成立,如果是,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FAASN中的最后一个离散傅里叶变换幅度谱系数与第1个离散傅里叶变换幅度谱系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;f2、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第二二值数字水印密钥,记为W
F;g2、在零水印嵌入端,将记录的FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息传输给零水印提取端;所述的步骤1-4中第三二值数字水印密钥W
S的获取过程为:a3、根据待嵌入的实际数字水印W的分辨率,将FA分拆成多个互不重叠且大小为U×V的第一子方块,其中,U表示第一子方块的竖直分辨率,V表示第一子方块的横向分辨率,U=V,
U × V × M × N = I 2 L × J 2 L ; ]]>b3、对FA中的每个第一子方块进行二维奇异值分解,得到每个第一子方块的二维奇异值矩阵,对于FA中的第y个第一子方块的二维奇异值矩阵,将其记为FAS
y,其中,1≤y≤M×N;c3、按先行后列顺序方式依次选取每个第一子方块的二维奇异值矩阵中的第一个奇异值,构成一个第一一维奇异值系数序列,记为FASSN,FASSN={fassn(y)=FAS
y(1,1),1≤y≤M×N},其中,fassn(x)表示FASSN中的第y个奇异值系数,FAS
y(1,1)表示FAS
y中的第一个奇异值;d3、依次比较FASSN中的相邻两个奇异值系数的大小,并根据比较结果返回逻辑值1或0,对于FASSN中的任意相邻两个奇异值系数,将其分别记为fassn(z)和fassn(z+1),判断fassn(z)>fassn(z+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FASSN中的最后一个奇异值系数与第1个奇异值系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e3、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第三二值数字水印密钥,记为W
S。
3.根据权利要求1或2所述的一种具有多重密钥的数字图像零水印嵌入方法,其特征在于所述的步骤1-5中置乱处理采用Arnold置乱变换。
4.一种具有多重密钥的数字图像零水印提取方法,其特征在于包括以下步骤:2-1、在零水印提取端,将待提取数字水印的数字图像记为TF,TF={0≤tf(i",j")≤255,1≤i"≤I",1≤j"≤J"},将待提取的实际数字水印记为W",W"={w"(m",n")=0/1,1≤m"≤M",1≤n"≤N"},其中,I"表示待提取数字水印的数字图像TF的竖直分辨率,J"表示待提取数字水印的数字图像TF的横向分辨率,I"×J"表示待提取数字水印的数字图像TF的分辨率,待提取数字水印的数字图像TF的分辨率与零水印嵌入端嵌入有实际数字水印的数字图像的分辨率相同,tf(i",j")表示待提取数字水印的数字图像TF中坐标位置为(i",j")的像素的像素值;M"表示待提取的实际数字水印W"的竖直分辨率,N"表示待提取的实际数字水印W"的横向分辨率,M"×N"表示待提取的实际数字水印W"的分辨率,待提取的实际数字水印W"的分辨率与零水印嵌入端嵌入的实际数字水印的分辨率相同,w"(m",n")表示待提取的实际数字水印W"中坐标位置为(m",n")的像素的像素值;2-2、对待提取数字水印的数字图像TF进行归一化处理,将归一化处理后得到的数字图像记为TF",将TF"中坐标位置为(i",j")的像素的像素值记为tf"(i",j"),tf"(i",j")=tf(i",j")/255;2-3、对归一化处理后的数字图像TF"进行L"级二维离散小波分解,得到一个第二小波逼近子图和多个第二小波细节子图,将第二小波逼近子图记为TFA,其中,TFA的分辨率为
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="312"/>
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="660"/>min()为取最小值函数,max()为取最大值函数,符号“
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="86"/>”表示取小于其自身的最大整数;2-4、对TFA分别进行二维离散余弦变换、二维离散傅里叶变换和二维奇异值分解,对应获得第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S;2-5、对来自零水印嵌入端的第一零水印信息W
RC与第四二值数字水印密钥TW
C进行异或运算,解密得到第一二值数字水印,记为TW
1,TW
1=xor(W
RC,TW
C),对来自零水印嵌入端的第二零水印信息W
RF与第五二值数字水印密钥TW
F进行异或运算,解密得到第二二值数字水印,记为TW
2,TW
2=xor(W
RF,TW
F),对来自零水印嵌入端的第三零水印信息W
RS与第六二值数字水印密钥TW
S进行异或运算,解密得到第三二值数字水印,记为TW
3,TW
3=xor(W
RS,TW
S),其中,xor()为异或运算函数;2-6、对第一二值数字水印TW
1、第二二值数字水印TW
2和第三二值数字水印TW
3分别进行反置乱处理,对应得到第一具有版权认证信息的二值数字水印、第二具有版权认证信息的二值数字水印和第三具有版权认证信息的二值数字水印,分别记为W
1"、W
2"和W
3";2-7、将W
1"、W
2"和W
3"分别与来自零水印嵌入端的实际数字水印W进行相似度计算,对应得到三个归一化相关系数,再根据三个归一化相关系数或三个归一化相关系数中的最大一个相关系数来判定是否提取出嵌入的实际数字水印。
5.根据权利要求4所述的一种具有多重密钥的数字图像零水印提取方法,其特征在于所述的步骤2-4中第四二值数字水印密钥TW
C的获取过程为:a4、对TFA进行二维离散余弦变换,得到一个与TFA相同分辨率的第二二维离散余弦变换系数矩阵,记为TFAC;b4、对TFAC进行Zig-Zag扫描排列,得到一个第二一维离散余弦变换系数序列,记为TFACS,
TFACS = { tfacs ( x ′ ) , 1 ≤ x ′ ≤ ( I ′ 2 L ′ ) × ( J ′ 2 L ′ ) } , ]]>其中,tfacs(x")表示TFACS中的第x"个离散余弦变换系数,TFACS中的第2个离散余弦变换系数开始均为离散余弦变换交流系数;c4、根据零水印嵌入端记录的FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息,从TFACS中选取出相应位置的M"×N"个离散余弦变换交流系数,构成一个第二一维离散余弦变换交流系数序列,记为TFACSN,TFACSN={tfacsn(y"),1≤y"≤M"×N"},其中,tfacsn(y")表示TFACSN中的第y"个离散余弦变换交流系数;d4、依次比较TFACSN中的相邻两个离散余弦变换交流系数的大小,并根据比较结果返回逻辑值1或0,对于TFACSN中的任意相邻两个离散余弦变换交流系数,将其分别记为tfacsn(z")和tfacsn(z"+1),判断tfacsn(z")>tfacsn(z"+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFACSN中的最后一个离散余弦变换交流系数与第1个离散余弦变换交流系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e4、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第四二值数字水印密钥,记为TW
C;所述的步骤2-4中第五二值数字水印密钥TW
F的获取过程为:a5、对TFA进行二维离散傅里叶变换,得到一个与TFA相同分辨率的第二二维离散傅里叶变换频谱,记为TFAF;b5、从TFAF中提取出第二二维离散傅里叶变换幅度谱,记为TFAA,TFAA=abs(TFAF),其中,abs()为求幅度函数;c5、对TFAA进行Zig-Zag扫描排列,得到一个第二一维离散傅里叶变换幅度谱系数序列,记为TFAAS,
TFAAS = { tfaas ( x ′ ) , 1 ≤ x ′ ≤ ( I ′ 2 L ′ ) × ( J ′ 2 L ′ ) } , ]]>其中,tfaas(x")表示TFAAS中的第x"个离散傅里叶变换幅度谱系数;d5、根据零水印嵌入端记录的FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息,从TFAAS中选取出相应位置的M"×N"个离散傅里叶变换幅度谱系数,构成一个新的第二一维离散傅里叶变换幅度谱系数序列,记为TFAASN,TFAASN={tfaasn(y"),1≤y"≤M"×N"},其中,tfaasn(y")表示TFAASN中的第y"个离散傅里叶变换幅度谱系数;e5、依次比较TFAASN中的相邻两个离散傅里叶变换幅度谱系数的大小,并根据比较结果返回逻辑值1或0,对于TFAASN中的任意相邻两个离散傅里叶变换幅度谱系数,将其分别记为tfaasn(z")和tfaasn(z"+1),判断tfaasn(z")>tfaasn(z"+1)是否成立,如果成立则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFAASN中的最后一个离散傅里叶变换幅度谱系数与第1个离散傅里叶变换幅度谱系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;f5、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第五二值数字水印密钥,记为TW
F;所述的步骤2-4中第六二值数字水印密钥TW
S的获取过程为:a6、将TFA分拆成多个互不重叠且大小为U"×V"的第二子方块,其中,U"表示第二子方块的竖直分辨率,V"表示第二子方块的横向分辨率,U"=V",
U ′ × V ′ × M ′ × N ′ = I ′ 2 L ′ × J ′ 2 L ′ ; ]]>b6、对TFA中的每个第二子方块进行二维奇异值分解,得到每个第二子方块的二维奇异值矩阵,对于TFA中的第y"个第二子方块的二维奇异值矩阵,将其记为TFAS
y",其中,1≤y"≤M"×N";c6、按先行后列顺序方式依次选取每个第二子方块的二维奇异值矩阵中的第一个奇异值,构成一个第二一维奇异值系数序列,记为TFASSN,TFASSN={tfassn(y")=TFAS
y"(1,1),1≤y"≤M"×N"},其中,tfassn(y")表示TFASSN中的第y"个奇异值系数,TFAS
y"(1,1)表示TFAS
y"中的第一个奇异值;d6、依次比较TFASSN中的相邻两个奇异值系数的大小,并根据比较结果返回逻辑值1或0,对于TFASSN中的任意相邻两个奇异值系数,将其分别记为tfassn(z")和tfassn(z"+1),判断tfassn(z")>tfassn(z"+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFASSN中的最后一个奇异值系数与第1个奇异值系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e6、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第六二值数字水印密钥,记为TW
S。
6.根据权利要求4或5所述的一种具有多重密钥的数字图像零水印提取方法,其特征在于所述的步骤2-7的具体过程为:z1、计算W
1"与W的归一化相关系数,将其记为ρ(W,W
1"),
ρ ( W , W 1 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 1 ′ ( m , n ) - w 1 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 1 ′ ( m , n ) - w 1 ′ ‾ ) 2 , ]]>计算W
2"与W的归一化相关系数,将其记为ρ(W,W
2"),
ρ ( W , W 2 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 2 ′ ( m , n ) - w 2 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 2 ′ ( m , n ) - w 2 ′ ‾ ) 2 , ]]>计算W
3"与W的归一化相关系数,将其记为ρ(W,W
3"),
ρ ( W , W 3 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 3 ′ ( m , n ) - w 3 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 3 ′ ( m , n ) - w 3 ′ ‾ ) 2 , ]]>其中,w(m,n)表示W中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="56"/>表示W中的所有像素的像素值的均值,w
1"(m,n)表示W
1"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="76"/>表示W
1"中的所有像素的像素值的均值,w"
2(m,n)表示W
2"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="73"/>表示W
2"中的所有像素的像素值的均值,w"
3(m,n)表示W
3"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="71"/>表示W
3"中的所有像素的像素值的均值;z2、根据ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")判定是否提取出嵌入的实际数字水印,如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中至少一个的值为1,则确定W被无损地提取出,如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中至少一个的值大于或等于δ
T且小于1,则确定W提取成功,如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")的值均小于δ
T,则确定W提取失败,其中,δ
T表示水印提取门限;或首先找出ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中的最大相关系数,然后根据该最大相关系数判定是否提取出嵌入的实际数字水印,如果该最大相关系数的值为1,则确定W被无损地提取出,如果该最大相关系数的值大于或等于δ
T且小于1,则确定W提取成功,如果该最大相关系数的值小于δ
T,则确定W提取失败,其中,δ
T表示水印提取门限。
技术领域本发明涉及一种信息安全领域中的数字水印技术,尤其是涉及一种具有多重密钥的数字图像零水印嵌入和提取方法。
背景技术随着计算机网络和多媒体技术的迅速发展,数字媒体例如数字图像、数字音频、数字视频等的存贮、传输和处理变得越来越频繁和便捷,这一方面促进了人类信息的共享,推动了社会的进步,但随之而来的数字媒体的安全、版权的保护和内容的认证等方面问题也变得日益突出。作为当前数字媒体信息安全领域的研究热点,数字水印技术已被广泛用于数字媒体产品的版权保护和内容认证,它通过将包含作者、所有者、发行者或合法使用者具有版权保护和内容认证的某种或几种特征信息例如签名、版权标志、序列号、日期或图标等作为数字水印嵌于数字媒体产品中,从而可以跟踪、鉴别非法复制和盗用的数字媒体产品,进而保护数字媒体产品的合法拷贝和传播。传统的数字水印技术是通过对原始数字媒体空域数据或变换域系数进行一定的修改来实现数字水印的嵌入,因此不可避免地存在着水印鲁棒性和不可觉察性之间的矛盾。近几年来,零水印技术方案的提出极大地缓解了这一矛盾,成为数字水印技术中一个新的研究方向。零水印技术方案的基本思想是通过数字媒体产品自身的特征信息构造出水印密钥,再与实际数字水印结合形成相关零水印信息后注册到知识产权水印信息数据库中。显然,它突破了“向数字媒体中嵌入水印”才能实现版权保护或内容认证等功能的常规思想。由于零水印技术方案中的数字水印是注册到知识产权水印信息数据库中,而不是嵌入到数字媒体中的,因此就不存在数字媒体产品质量下降或水印量受限等问题,正因为这个特性,零水印技术方案很好地平衡了数字水印的鲁棒性和不可觉察性之间的关系。目前,国内外学者已提出了多种零水印技术方案。然而,目前提出的零水印技术方案基本上是采用单重密钥的零水印嵌入思想,即通过数字媒体产品自身的一种特征信息构造出一个水印密钥,再与实际数字水印相结合后注册到知识产权水印信息数据库中完成数字水印的嵌入。显然,这种单重密钥的零水印技术方案存在着易被攻击和破解的局限性。数字媒体产品受到某一种或几种联合攻击后,会增加数字水印的提取难度。更为重要的是,单重水印密钥一旦被破解,非法用户就可以删除数字媒体产品中嵌入的实际数字水印,使其重新回到无版权保护的状态,从而对数字媒体产品加以任意复制、修改和再传输;另外也可以通过篡改水印密钥和实际数字水印,将数字媒体产品据为己有,这将严重侵害到作者和版权所有者等各方面的利益。
发明内容本发明所要解决的技术问题是提供一种在保证数字图像质量没有任何下降的情况下,能够有效提高数字水印的安全性和鲁棒性的具有多重密钥的数字图像零水印嵌入和提取方法。本发明解决上述技术问题所采用的技术方案为:一种具有多重密钥的数字图像零水印嵌入方法,其特征在于包括以下步骤:1-1、在零水印嵌入端,假设待嵌入数字水印的原始数字图像为8bit的灰度图像,记为F,F={0≤f(i,j)≤255,1≤i≤I,1≤j≤J},假设待嵌入的实际数字水印为一个二值图像,记为W,W={w(m,n)=0或1,1≤m≤M,1≤n≤N},其中,I表示待嵌入数字水印的原始数字图像F的竖直分辨率,J表示待嵌入数字水印的原始数字图像F的横向分辨率,I×J表示待嵌入数字水印的原始数字图像F的分辨率,f(i,j)表示待嵌入数字水印的原始数字图像F中坐标位置为(i,j)的像素的像素值,M表示待嵌入的实际数字水印W的竖直分辨率,N表示待嵌入的实际数字水印W的横向分辨率,M×N表示待嵌入的实际数字水印W的分辨率,w(m,n)表示待嵌入的实际数字水印W中坐标位置为(m,n)的像素的像素值;1-2、对待嵌入数字水印的原始数字图像F进行归一化处理,将归一化处理后得到的数字图像记为F",将F"中坐标位置为(i,j)的像素的像素值记为f"(i,j),f"(i,j)=f(i,j)/255;1-3、对归一化处理后得到的数字图像F"进行L级二维离散小波分解,得到一个第一小波逼近子图和多个第一小波细节子图,将第一小波逼近子图记为FA,其中,FA的分辨率为
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="700"/>min()为取最小值函数,max()为取最大值函数,符号“
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="74"/>”表示取小于其自身的最大整数;1-4、对FA分别进行二维离散余弦变换、二维离散傅里叶变换和二维奇异值分解,对应获得第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S;1-5、对待嵌入的实际数字水印W进行置乱处理,得到置乱后的数字水印,记为W
R,然后将W
R分别与第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S结合,对应得到第一零水印信息、第二零水印信息和第三零水印信息,分别记为W
RC、W
RF和W
RS,W
RC=xor(W
R,W
C),W
RF=xor(W
R,W
F),W
RS=xor(W
R,W
S),再将第一零水印信息W
RC、第二零水印信息W
RF和第三零水印信息W
RS保存于注册机构的数字水印信息数据库中,完成实际数字水印W的嵌入,其中,xor()为异或运算函数;1-6、在零水印嵌入端,将实际数字水印W、第一零水印信息W
RC、第二零水印信息W
RF和第三零水印信息W
RS传输给零水印提取端。所述的步骤1-4中第一二值数字水印密钥W
C的获取过程为:a1、对FA进行二维离散余弦变换,得到一个与FA相同分辨率的第一二维离散余弦变换系数矩阵,记为FAC;b1、对FAC进行Zig-Zag扫描排列,得到一个第一一维离散余弦变换系数序列,记为FACS,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="700"/>其中,facs(x)表示FACS中的第x个离散余弦变换系数,FACS中的第2个离散余弦变换系数开始均为离散余弦变换交流系数;c1、根据待嵌入的实际数字水印W的分辨率,从FACS中顺序选取出满足第一设定条件的M×N个离散余弦变换交流系数,构成一个第一一维离散余弦变换交流系数序列,记为FACSN,FACSN={facsn(y),1≤y≤M×N},然后记录FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息,其中,facsn(y)表示FACSN中的第y个离散余弦变换交流系数,第一设定条件为使得构成的第一一维离散余弦变换交流系数序列FACSN中的任意相邻两个离散余弦变换交流系数的差值的绝对值大于或等于设定的第一差值阈值δ
C;d1、依次比较FACSN中的相邻两个离散余弦变换交流系数的大小,并根据比较结果返回逻辑值1或0,对于FACSN中的任意相邻两个离散余弦变换交流系数,将其分别记为facsn(z)和facsn(z+1),判断facsn(z)>facsn(z+1)是否成立,如果是,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FACSN中的最后一个离散余弦变换交流系数与第1个离散余弦变换交流系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e1、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第一二值数字水印密钥,记为W
C;f1、在零水印嵌入端,将记录的FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息传输给零水印提取端;所述的步骤1-4中第二二值数字水印密钥W
F的获取过程为:a2、对FA进行二维离散傅里叶变换,得到一个与FA相同分辨率的第一二维离散傅里叶变换频谱,记为FAF;b2、从FAF中提取出第一二维离散傅里叶变换幅度谱,记为FAA,FAA=abs(FAF),其中,abs()为求幅度函数;c2、对FAA进行Zig-Zag扫描排列,得到一个第一一维离散傅里叶变换幅度谱系数序列,记为FAAS,
FAAS = { faas ( x ) , 1 ≤ x ≤ ( L 2 L ) × ( J 2 L ) } , ]]>其中,faas(x)表示FAAS中的第x个离散傅里叶变换幅度谱系数;d2、根据待嵌入的实际数字水印W的分辨率,从FAAS中顺序选取出满足第二设定条件的M×N个离散傅里叶变换幅度谱系数,构成一个新的第一一维离散傅里叶变换幅度谱系数序列,记为FAASN,FAASN={faasn(y),1≤y≤M×N},然后记录FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息,其中,faasn(y)表示FAASN中的第y个离散傅里叶变换幅度谱系数,第二设定条件为使得构成的第一一维离散傅里叶变换幅度谱系数序列FAASN中的任意相邻两个离散傅里叶变换幅度谱系数的差值的绝对值大于或等于设定的第二差值阈值δ
F;e2、依次比较FAASN中的相邻两个离散傅里叶变换幅度谱系数的大小,并根据比较结果返回逻辑值1或0,对于FAASN中的任意相邻两个离散傅里叶变换幅度谱系数,将其分别记为faasn(z)和faasn(z+1),判断faasn(z)>faasn(z+1)是否成立,如果是,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FAASN中的最后一个离散傅里叶变换幅度谱系数与第1个离散傅里叶变换幅度谱系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;f2、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第二二值数字水印密钥,记为W
F;g2、在零水印嵌入端,将记录的FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息传输给零水印提取端;所述的步骤1-4中第三二值数字水印密钥W
S的获取过程为:a3、根据待嵌入的实际数字水印W的分辨率,将FA分拆成多个互不重叠且大小为U×V的第一子方块,其中,U表示第一子方块的竖直分辨率,V表示第一子方块的横向分辨率,U=V,
U × V × M × N = I 2 L × J 2 L ; ]]>b3、对FA中的每个第一子方块进行二维奇异值分解,得到每个第一子方块的二维奇异值矩阵,对于FA中的第y个第一子方块的二维奇异值矩阵,将其记为FAS
y,其中,1≤y≤M×N;c3、按先行后列顺序方式依次选取每个第一子方块的二维奇异值矩阵中的第一个奇异值,构成一个第一一维奇异值系数序列,记为FASSN,FASSN={fassn(y)=FAS
y(1,1),1≤y≤M×N},其中,fassn(x)表示FASSN中的第y个奇异值系数,FAS
y(1,1)表示FAS
y中的第一个奇异值;d3、依次比较FASSN中的相邻两个奇异值系数的大小,并根据比较结果返回逻辑值1或0,对于FASSN中的任意相邻两个奇异值系数,将其分别记为fassn(z)和fassn(z+1),判断fassn(z)>fassn(z+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FASSN中的最后一个奇异值系数与第1个奇异值系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e3、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第三二值数字水印密钥,记为W
S。所述的步骤1-5中置乱处理采用Arnold置乱变换。一种具有多重密钥的数字图像零水印提取方法,其特征在于包括以下步骤:2-1、在零水印提取端,将待提取数字水印的数字图像记为TF,TF={0≤tf(i",j")≤255,1≤i"≤I",1≤j"≤J"},将待提取的实际数字水印记为W",W"={w"(m",n")=0/1,1≤m"≤M",1≤n"≤N"},其中,I"表示待提取数字水印的数字图像TF的竖直分辨率,J"表示待提取数字水印的数字图像TF的横向分辨率,I"×J"表示待提取数字水印的数字图像TF的分辨率,待提取数字水印的数字图像TF的分辨率与零水印嵌入端嵌入有实际数字水印的数字图像的分辨率相同,tf(i",j")表示待提取数字水印的数字图像TF中坐标位置为(i",j")的像素的像素值;M"表示待提取的实际数字水印W"的竖直分辨率,N"表示待提取的实际数字水印W"的横向分辨率,M"×N"表示待提取的实际数字水印W"的分辨率,待提取的实际数字水印W"的分辨率与零水印嵌入端嵌入的实际数字水印的分辨率相同,w"(m",n")表示待提取的实际数字水印W"中坐标位置为(m",n")的像素的像素值;2-2、对待提取数字水印的数字图像TF进行归一化处理,将归一化处理后得到的数字图像记为TF",将TF"中坐标位置为(i",j")的像素的像素值记为tf"(i",j"),tf"(i",j")=tf(i",j")/255;2-3、对归一化处理后的数字图像TF"进行L"级二维离散小波分解,得到一个第二小波逼近子图和多个第二小波细节子图,将第二小波逼近子图记为TFA,其中,TFA的分辨率为
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="700"/>min()为取最小值函数,max()为取最大值函数,符号“
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="82"/>”表示取小于其自身的最大整数;2-4、对TFA分别进行二维离散余弦变换、二维离散傅里叶变换和二维奇异值分解,对应获得第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S;2-5、对来自零水印嵌入端的第一零水印信息W
RC与第四二值数字水印密钥TW
C进行异或运算,解密得到第一二值数字水印,记为TW
1,TW
1=xor(W
RC,TW
C),对来自零水印嵌入端的第二零水印信息W
RF与第五二值数字水印密钥TW
F进行异或运算,解密得到第二二值数字水印,记为TW
2,TW
2=xor(W
RF,TW
F),对来自零水印嵌入端的第三零水印信息W
RS与第六二值数字水印密钥TW
S进行异或运算,解密得到第三二值数字水印,记为TW
3,TW
3=xor(W
RS,TW
S),其中,xor()为异或运算函数;2-6、对第一二值数字水印TW
1、第二二值数字水印TW
2和第三二值数字水印TW
3分别进行反置乱处理,对应得到第一具有版权认证信息的二值数字水印、第二具有版权认证信息的二值数字水印和第三具有版权认证信息的二值数字水印,分别记为W
1"、W
2"和W
3";2-7、将W
1"、W
2"和W
3"分别与来自零水印嵌入端的实际数字水印W进行相似度计算,对应得到三个归一化相关系数,再根据三个归一化相关系数或三个归一化相关系数中的最大一个相关系数来判定是否提取出嵌入的实际数字水印。所述的步骤2-4中第四二值数字水印密钥TW
C的获取过程为:a4、对TFA进行二维离散余弦变换,得到一个与TFA相同分辨率的第二二维离散余弦变换系数矩阵,记为TFAC;b4、对TFAC进行Zig-Zag扫描排列,得到一个第二一维离散余弦变换系数序列,记为TFACS,
TFACS = { tfacs ( x ′ ) , 1 ≤ x ′ ≤ ( I ′ 2 L ′ ) × ( J ′ 2 L ′ ) } , ]]>其中,tfacs(x")表示TFACS中的第x"个离散余弦变换系数,TFACS中的第2个离散余弦变换系数开始均为离散余弦变换交流系数;c4、根据零水印嵌入端记录的FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息,从TFACS中选取出相应位置的M"×N"个离散余弦变换交流系数,构成一个第二一维离散余弦变换交流系数序列,记为TFACSN,TFACSN={tfacsn(y"),1≤y"≤M"×N"},其中,tfacsn(y")表示TFACSN中的第y"个离散余弦变换交流系数;d4、依次比较TFACSN中的相邻两个离散余弦变换交流系数的大小,并根据比较结果返回逻辑值1或0,对于TFACSN中的任意相邻两个离散余弦变换交流系数,将其分别记为tfacsn(z")和tfacsn(z"+1),判断tfacsn(z")>tfacsn(z"+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFACSN中的最后一个离散余弦变换交流系数与第1个离散余弦变换交流系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e4、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第四二值数字水印密钥,记为TW
C;所述的步骤2-4中第五二值数字水印密钥TW
F的获取过程为:a5、对TFA进行二维离散傅里叶变换,得到一个与TFA相同分辨率的第二二维离散傅里叶变换频谱,记为TFAF;b5、从TFAF中提取出第二二维离散傅里叶变换幅度谱,记为TFAA,TFAA=abs(TFAF),其中,abs()为求幅度函数;c5、对TFAA进行Zig-Zag扫描排列,得到一个第二一维离散傅里叶变换幅度谱系数序列,记为TFAAS,
TFAAS = { tfaas ( x ′ ) , 1 ≤ x ′ ≤ ( I ′ 2 L ′ ) × ( J ′ 2 L ′ ) } , ]]>其中,tfaas(x")表示TFAAS中的第x"个离散傅里叶变换幅度谱系数;d5、根据零水印嵌入端记录的FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息,从TFAAS中选取出相应位置的M"×N"个离散傅里叶变换幅度谱系数,构成一个新的第二一维离散傅里叶变换幅度谱系数序列,记为TFAASN,TFAASN={tfaasn(y"),1≤y"≤M"×N"},其中,tfaasn(y")表示TFAASN中的第y"个离散傅里叶变换幅度谱系数;e5、依次比较TFAASN中的相邻两个离散傅里叶变换幅度谱系数的大小,并根据比较结果返回逻辑值1或0,对于TFAASN中的任意相邻两个离散傅里叶变换幅度谱系数,将其分别记为tfaasn(z")和tfaasn(z"+1),判断tfaasn(z")>tfaasn(z"+1)是否成立,如果成立则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFAASN中的最后一个离散傅里叶变换幅度谱系数与第1个离散傅里叶变换幅度谱系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;f5、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第五二值数字水印密钥,记为TW
F;所述的步骤2-4中第六二值数字水印密钥TW
S的获取过程为:a6、将TFA分拆成多个互不重叠且大小为U"×V"的第二子方块,其中,U"表示第二子方块的竖直分辨率,V"表示第二子方块的横向分辨率,U"=V",
U ′ × V ′ × M ′ × N ′ = I ′ 2 L ′ × J ′ 2 L ′ ; ]]>b6、对TFA中的每个第二子方块进行二维奇异值分解,得到每个第二子方块的二维奇异值矩阵,对于TFA中的第y"个第二子方块的二维奇异值矩阵,将其记为TFAS
y",其中,1≤y"≤M"×N";c6、按先行后列顺序方式依次选取每个第二子方块的二维奇异值矩阵中的第一个奇异值,构成一个第二一维奇异值系数序列,记为TFASSN,TFASSN={tfassn(y")=TFAS
y"(1,1),1≤y"≤M"×N"},其中,tfassn(y")表示TFASSN中的第y"个奇异值系数,TFAS
y"(1,1)表示TFAS
y"中的第一个奇异值;d6、依次比较TFASSN中的相邻两个奇异值系数的大小,并根据比较结果返回逻辑值1或0,对于TFASSN中的任意相邻两个奇异值系数,将其分别记为tfassn(z")和tfassn(z"+1),判断tfassn(z")>tfassn(z"+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFASSN中的最后一个奇异值系数与第1个奇异值系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0;e6、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第六二值数字水印密钥,记为TW
S。所述的步骤2-7的具体过程为:z1、计算W
1"与W的归一化相关系数,将其记为ρ(W,W
1"),
ρ ( W , W 1 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 1 ′ ( m , n ) - w 1 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 1 ′ ( m , n ) - w 1 ′ ‾ ) 2 , ]]>计算W
2"与W的归一化相关系数,将其记为ρ(W,W
2"),
ρ ( W , W 2 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 2 ′ ( m , n ) - w 2 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 2 ′ ( m , n ) - w 2 ′ ‾ ) 2 , ]]>计算W
3"与W的归一化相关系数,将其记为ρ(W,W
3"),
ρ ( W , W 3 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 3 ′ ( m , n ) - w 3 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 3 ′ ( m , n ) - w 3 ′ ‾ ) 2 , ]]>其中,w(m,n)表示W中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="56"/>表示W中的所有像素的像素值的均值,w
1"(m,n)表示W
1"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="63"/>表示W
1"中的所有像素的像素值的均值,w"
2(m,n)表示W
2"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="74"/>表示W
2"中的所有像素的像素值的均值,w"
3(m,n)表示W
3"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="69"/>表示W
3"中的所有像素的像素值的均值;z2、根据ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")判定是否提取出嵌入的实际数字水印,如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中至少一个的值为1,则确定W被无损地提取出,如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中至少一个的值大于或等于δ
T且小于1,则确定W提取成功,如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")的值均小于δ
T,则确定W提取失败,其中,δ
T表示水印提取门限;或首先找出ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中的最大相关系数,然后根据该最大相关系数判定是否提取出嵌入的实际数字水印,如果该最大相关系数的值为1,则确定W被无损地提取出,如果该最大相关系数的值大于或等于δ
T且小于1,则确定W提取成功,如果该最大相关系数的值小于δ
T,则确定W提取失败,其中,δ
T表示水印提取门限。与现有技术相比,本发明的优点在于:1)相比于现有的单重密钥的零水印技术,本发明的嵌入方法通过从原始数字图像自身的不同特征中构造出多重水印密钥,分别与待嵌入的实际二值数字水印结合形成具有不同密钥的多重零水印信息,从而对实际二值数字水印起到了多重保护的功能,这样即使其中一个零水印信息被攻击和破解,还可以从另外的其他零水印信息中提取出嵌入的实际二值数字水印,因此提高了被攻击和破解的难度,更具有安全性和实际应用价值。2)相比于传统的数字水印技术,本发明的嵌入方法并没有将实际二值数字水印嵌入到原始数字图像中,而是将其注册到数字水印信息数据库中,因此不仅实现了嵌入的二值数字水印完全不可觉察性,而且没有对原始数字图像数据产生任何破坏,不存在图像质量下降的任何问题,维持了原始数字图像信息的完整性,这非常适用于一些敏感的数字图像例如医学图像、掌纹图像和军事图像等方面的版权保护。3)本发明的嵌入和提取方法是在数字图像二维离散小波分解基础上,再分别进行二维离散余弦变换、二维离散傅里叶变换和二维奇异值分解,充分结合和利用了各种变换域的特点,从而实现了具有优异鲁棒性能的抗常规图像处理攻击的数字水印嵌入和提取方法,很好地平衡了数字水印的鲁棒性和不可觉察性之间的矛盾。
附图说明图1a为原始Lena数字图像;图1b为待嵌入的实际数字水印;图2a为以第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S方式嵌入实际数字水印后的Lena数字图像;图2b为以第四二值数字水印密钥TW
C方式从图2a中提取出的实际数字水印;图2c为以第五二值数字水印密钥TW
F方式从图2a中提取出的实际数字水印;图2d为以第六二值数字水印密钥TW
S方式从图2a中提取出的实际数字水印;图3a为将图2a所示的数字图像中的所有像素值加0.2后的水印Lena数字图像;图3b为将图2a所示的数字图像中的所有像素值加0.5后的水印Lena数字图像;图3c为将图2a所示的数字图像中的所有像素值减0.2后的水印Lena数字图像;图3d为将图2a所示的数字图像中的所有像素值减0.5后的水印Lena数字图像;图3e为以第四二值数字水印密钥TW
C方式从图3a中提取出的实际数字水印;图3f为以第五二值数字水印密钥TW
F方式从图3a中提取出的实际数字水印;图3g为以第六二值数字水印密钥TW
S方式从图3a中提取出的实际数字水印;图3h为以第四二值数字水印密钥TW
C方式从图3b中提取出的实际数字水印;图3i为以第五二值数字水印密钥TW
F方式从图3b中提取出的实际数字水印;图3j为以第六二值数字水印密钥TW
S方式从图3b中提取出的实际数字水印;图3k为以第四二值数字水印密钥TW
C方式从图3c中提取出的实际数字水印;图3l为以第五二值数字水印密钥TW
F方式从图3c中提取出的实际数字水印;图3m为以第六二值数字水印密钥TW
S方式从图3c中提取出的实际数字水印;图3n为以第四二值数字水印密钥TW
C方式从图3d中提取出的实际数字水印;图3o为以第五二值数字水印密钥TW
F方式从图3d中提取出的实际数字水印;图3p为以第六二值数字水印密钥TW
S方式从图3d中提取出的实际数字水印;图4a为图2a所示的数字图像经直方图均衡化处理后的水印Lena数字图像;图4b为以第四二值数字水印密钥TW
C方式从图4a中提取出的实际数字水印;图4c为以第五二值数字水印密钥TW
F方式从图4a中提取出的实际数字水印;图4d为以第六二值数字水印密钥TW
S方式从图4a中提取出的实际数字水印;图5a为图2a所示的数字图像经[5×5]窗口中值滤波后的水印Lena数字图像;图5b为图2a所示的数字图像经[11×11]窗口中值滤波后的水印Lena数字图像;图5c为以第四二值数字水印密钥TW
C方式从图5a中提取出的实际数字水印;图5d为以第五二值数字水印密钥TW
F方式从图5a中提取出的实际数字水印;图5e为以第六二值数字水印密钥TW
S方式从图5a中提取出的实际数字水印;图5f为以第四二值数字水印密钥TW
C方式从图5b中提取出的实际数字水印;图5g为以第五二值数字水印密钥TW
F方式从图5b中提取出的实际数字水印;图5h为以第六二值数字水印密钥TW
S方式从图5b中提取出的实际数字水印;图6a为图2a所示的数字图像经10%质量因子的JPEG压缩后的水印Lena数字图像;图6b为图2a所示的数字图像经4%质量因子的JPEG压缩后的水印Lena数字图像;图6c为以第四二值数字水印密钥TW
C方式从图6a中提取出的实际数字水印;图6d为以第五二值数字水印密钥TW
F方式从图6a中提取出的实际数字水印;图6e为以第六二值数字水印密钥TW
S方式从图6a中提取出的实际数字水印;图6f为以第四二值数字水印密钥TW
C方式从图6b中提取出的实际数字水印;图6g为以第五二值数字水印密钥TW
F方式从图6b中提取出的实际数字水印;图6h为以第六二值数字水印密钥TW
S方式从图6b中提取出的实际数字水印;图7a为图2a所示的数字图像叠加均值为0方差为0.02高斯噪声后的水印Lena数字图像;图7b为图2a所示的数字图像叠加均值为0方差为0.05高斯噪声后的水印Lena数字图像;图7c为以第四二值数字水印密钥TW
C方式从图7a中提取出的实际数字水印;图7d为以第五二值数字水印密钥TW
F方式从图7a中提取出的实际数字水印;图7e为以第六二值数字水印密钥TW
S方式从图7a中提取出的实际数字水印;图7f为以第四二值数字水印密钥TW
C方式从图7b中提取出的实际数字水印;图7g为以第五二值数字水印密钥TW
F方式从图7b中提取出的实际数字水印;图7h为以第六二值数字水印密钥TW
S方式从图7b中提取出的实际数字水印;图8a为图2a所示的数字图像切去左上角128×128像素点后的水印Lena数字图像;图8b为图2a所示的数字图像切去左上角256×256像素点后的水印Lena数字图像;图8c为以第四二值数字水印密钥TW
C方式从图8a中提取出的实际数字水印;图8d为以第五二值数字水印密钥TW
F方式从图8a中提取出的实际数字水印;图8e为以第六二值数字水印密钥TW
S方式从图8a中提取出的实际数字水印;图8f为以第四二值数字水印密钥TW
C方式从图8b中提取出的实际数字水印;图8g为以第五二值数字水印密钥TW
F方式从图8b中提取出的实际数字水印;图8h为以第六二值数字水印密钥TW
S方式从图8b中提取出的实际数字水印;图9a为图2a所示的数字图像经逆时针方向旋转5度再恢复原方向后的水印Lena数字图像;图9b为图2a所示的数字图像经逆时针方向旋转25度再恢复原方向后的水印Lena数字图像;图9c为以第四二值数字水印密钥TW
C方式从图9a中提取出的实际数字水印;图9d为以第五二值数字水印密钥TW
F方式从图9a中提取出的实际数字水印;图9e为以第六二值数字水印密钥TW
S方式从图9a中提取出的实际数字水印;图9f为以第四二值数字水印密钥TW
C方式从图9b中提取出的实际数字水印;图9g为以第五二值数字水印密钥TW
F方式从图9b中提取出的实际数字水印;图9h为以第六二值数字水印密钥TW
S方式从图9b中提取出的实际数字水印;图10a为图2a所示的数字图像向右水平方向平移1/8区域后的水印Lena数字图像;图10b为图2a所示的数字图像向右水平方向平移1/4区域后的水印Lena数字图像;图10c为以第四二值数字水印密钥TW
C方式从图10a中提取出的实际数字水印;图10d为以第五二值数字水印密钥TW
F方式从图10a中提取出的实际数字水印;图10e为以第六二值数字水印密钥TW
S方式从图10a中提取出的实际数字水印;图10f为以第四二值数字水印密钥TW
C方式从图10b中提取出的实际数字水印;图10g为以第五二值数字水印密钥TW
F方式从图10b中提取出的实际数字水印;图10h为以第六二值数字水印密钥TW
S方式从图10b中提取出的实际数字水印。
具体实施方式以下结合附图实施例对本发明作进一步详细描述。本发明从数字水印的安全性考虑,提出一种具有多重密钥的数字图像零水印嵌入和提取方法,其从数字媒体产品(原始数字图像)自身不同的特征信息中构造出多重水印密钥,然后分别与待嵌入的实际数字水印相结合形成多重零水印信息后注册到水印信息数据库中,使得嵌入的数字水印处于多重保护之下,这样不仅有效提高了数字水印的安全性,而且有效保证了原始数字图像的质量没有任何下降;同时本发明方法充分结合和利用了各种变换域的特点,实现了具有优异鲁棒性能的抗常规图像处理攻击的数字水印嵌入和提取方法,很好地平衡了数字水印的鲁棒性和不可觉察性之间的矛盾。本发明的一种具有多重密钥的数字图像零水印嵌入方法,其包括以下步骤:1-1、在零水印嵌入端,假设待嵌入数字水印的原始数字图像为8bit的灰度图像,记为F,F={0≤f(i,j)≤255,1≤i≤I,1≤j≤J},假设待嵌入的实际数字水印为一个二值图像,记为W,W={w(m,n)=0或1,1≤m≤M,1≤n≤N},其中,I表示待嵌入数字水印的原始数字图像F的竖直分辨率,J表示待嵌入数字水印的原始数字图像F的横向分辨率,I×J表示待嵌入数字水印的原始数字图像F的分辨率,f(i,j)表示待嵌入数字水印的原始数字图像F中坐标位置为(i,j)的像素的像素值,M表示待嵌入的实际数字水印W的竖直分辨率,N表示待嵌入的实际数字水印W的横向分辨率,M×N表示待嵌入的实际数字水印W的分辨率,w(m,n)表示待嵌入的实际数字水印W中坐标位置为(m,n)的像素的像素值。在此具体实施例中,待嵌入的实际数字水印W可以选用具有实际意义的相应版权信息或所有权信息的作者或所有者签名、标识、序列号、日期或公司图标等二值图像。1-2、对待嵌入数字水印的原始数字图像F进行归一化处理,将归一化处理后得到的数字图像记为F",将F"中坐标位置为(i,j)的像素的像素值记为f"(i,j),f"(i,j)=f(i,j)/255。1-3、对归一化处理后得到的数字图像F"进行L级二维离散小波分解,得到一个第一小波逼近子图和多个第一小波细节子图,将第一小波逼近子图记为FA,其中,FA的分辨率为
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="700"/>min()为取最小值函数,max()为取最大值函数,符号“
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="84"/>”表示取小于其自身的最大整数,即该符号为向下取整符号。1-4、对FA分别进行二维离散余弦变换、二维离散傅里叶变换和二维奇异值分解,对应获得第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S。在此具体实施例中,第一二值数字水印密钥W
C的获取过程为:a1、对FA进行二维离散余弦变换,得到一个与FA相同分辨率的第一二维离散余弦变换系数矩阵,记为FAC。b1、对FAC进行Zig-Zag扫描排列,得到一个第一一维离散余弦变换系数序列,记为FACS,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="700"/>其中,facs(x)表示FACS中的第x个离散余弦变换系数,FACS中的第2个离散余弦变换系数开始均为离散余弦变换交流系数。c1、根据待嵌入的实际数字水印W的分辨率,从FACS中顺序选取出满足第一设定条件的M×N个离散余弦变换交流系数,构成一个第一一维离散余弦变换交流系数序列,记为FACSN,FACSN={facsn(y),1≤y≤M×N},然后记录FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息,其中,facsn(y)表示FACSN中的第y个离散余弦变换交流系数,第一设定条件为使得构成的第一一维离散余弦变换交流系数序列FACSN中的任意相邻两个离散余弦变换交流系数的差值的绝对值大于或等于设定的第一差值阈值δ
C。在此,FACSN中的离散余弦变换交流系数的选取是从FACS中的第2个离散余弦变换系数开始(即第1个离散余弦变换交流系数),且选取而形成的FACSN中的任意相邻两个离散余弦变换交流系数的差值的绝对值大于或等于设定的第一差值阈值δ
C。在此,第一差值阈值δ
C的设定原则是这样的,在确保能够选取到M×N个离散余弦变换交流系数的前提下取最大值,以提高数字图像在受到攻击处理时所选取的这些离散余弦变换交流系数相互间大小关系的不变性。d1、依次比较FACSN中的相邻两个离散余弦变换交流系数的大小,并根据比较结果返回逻辑值1或0,对于FACSN中的任意相邻两个离散余弦变换交流系数,将其分别记为facsn(z)和facsn(z+1),判断facsn(z)>facsn(z+1)是否成立,如果是,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FACSN中的最后一个离散余弦变换交流系数与第1个离散余弦变换交流系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0。e1、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第一二值数字水印密钥,记为W
C。f1、在零水印嵌入端,将记录的FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息传输给零水印提取端。在此具体实施例中,第二二值数字水印密钥W
F的获取过程为:a2、对FA进行二维离散傅里叶变换,得到一个与FA相同分辨率的第一二维离散傅里叶变换频谱,记为FAF。b2、从FAF中提取出第一二维离散傅里叶变换幅度谱,记为FAA,FAA=abs(FAF),其中,abs()为求幅度函数。c2、对FAA进行Zig-Zag扫描排列,得到一个第一一维离散傅里叶变换幅度谱系数序列,记为FAAS,
FAAS = { faas ( x ) , 1 ≤ x ≤ ( L 2 L ) × ( J 2 L ) } , ]]>其中,faas(x)表示FAAS中的第x个离散傅里叶变换幅度谱系数。d2、根据待嵌入的实际数字水印W的分辨率,从FAAS中顺序选取出满足第二设定条件的M×N个离散傅里叶变换幅度谱系数,构成一个新的第一一维离散傅里叶变换幅度谱系数序列,记为FAASN,FAASN={faasn(y),1≤y≤M×N},然后记录FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息,其中,faasn(y)表示FAASN中的第y个离散傅里叶变换幅度谱系数,第二设定条件为使得构成的第一一维离散傅里叶变换幅度谱系数序列FAASN中的任意相邻两个离散傅里叶变换幅度谱系数的差值的绝对值大于或等于设定的第二差值阈值δ
F。在此,FAASN中的离散傅里叶变换幅度谱系数是从FAAS中选取出的,且选取到的任意相邻两个离散傅里叶变换幅度谱系数的差值的绝对值大于或等于设定的第二差值阈值δ
F。在此,第二差值阈值δ
F的设定原则是这样的,在确保能够选取到M×N个离散傅里叶变换幅度谱系数的前提下取最大值,以提高数字图像在受到攻击处理时所选取的这些离散傅里叶变换幅度谱系数相互间大小关系的不变性。e2、依次比较FAASN中的相邻两个离散傅里叶变换幅度谱系数的大小,并根据比较结果返回逻辑值1或0,对于FAASN中的任意相邻两个离散傅里叶变换幅度谱系数,将其分别记为faasn(z)和faasn(z+1),判断faasn(z)>faasn(z+1)是否成立,如果是,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FAASN中的最后一个离散傅里叶变换幅度谱系数与第1个离散傅里叶变换幅度谱系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0。f2、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第二二值数字水印密钥,记为W
F。g2、在零水印嵌入端,将记录的FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息传输给零水印提取端。在此具体实施例中,第三二值数字水印密钥W
S的获取过程为:a3、根据待嵌入的实际数字水印W的分辨率,将FA分拆成多个互不重叠且大小为U×V的第一子方块,其中,U表示第一子方块的竖直分辨率,V表示第一子方块的横向分辨率,U=V,
U × V × M × N = I 2 L × J 2 L . ]]>b3、对FA中的每个第一子方块进行二维奇异值分解,得到每个第一子方块的二维奇异值矩阵,对于FA中的第y个第一子方块的二维奇异值矩阵,将其记为FAS
y,其中,1≤y≤M×N。c3、按先行后列顺序方式依次选取每个第一子方块的二维奇异值矩阵中的第一个奇异值,构成一个第一一维奇异值系数序列,记为FASSN,FASSN={fassn(y)=FAS
y(1,1),1≤y≤M×N},其中,fassn(x)表示FASSN中的第y个奇异值系数,FAS
y(1,1)表示FAS
y中的第一个奇异值。d3、依次比较FASSN中的相邻两个奇异值系数的大小,并根据比较结果返回逻辑值1或0,对于FASSN中的任意相邻两个奇异值系数,将其分别记为fassn(z)和fassn(z+1),判断fassn(z)>fassn(z+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z≤M×N-1;然后比较FASSN中的最后一个奇异值系数与第1个奇异值系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0。e3、将返回的M×N个逻辑值按先行后列顺序排列方式贮存于一个大小为M×N的二维矩阵中,将该二维矩阵作为第三二值数字水印密钥,记为W
S。1-5、对待嵌入的实际数字水印W进行置乱处理,得到置乱后的数字水印,记为W
R,然后将W
R分别与第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S结合,对应得到第一零水印信息、第二零水印信息和第三零水印信息,分别记为W
RC、W
RF和W
RS,W
RC=xor(W
R,W
C),W
RF=xor(W
R,W
F),W
RS=xor(W
R,W
S),再将第一零水印信息W
RC、第二零水印信息W
RF和第三零水印信息W
RS保存于注册机构的数字水印信息数据库中,完成实际数字水印W的嵌入,这样实际数字水印W具备了三重二值数字水印密钥的保护,其中,xor()为异或运算函数。在此,对待嵌入的实际数字水印W进行置乱处理,可以有效提高零水印在注册机构中的安全性,置乱处理可以采用常规的Arnold置乱变换,也可采用现有的其他成熟的置乱方法。1-6、在零水印嵌入端,将实际数字水印W、第一零水印信息W
RC、第二零水印信息W
RF和第三零水印信息W
RS传输给零水印提取端。本发明的一种具有多重密钥的数字图像零水印提取方法,其包括以下步骤:2-1、在零水印提取端,将待提取数字水印的数字图像(即测试图像)记为TF,TF={0≤tf(i",j")≤255,1≤i"≤I",1≤j"≤J"},将待提取的实际数字水印记为W",W"={w"(m",n")=0/1,1≤m"≤M",1≤n"≤N"},其中,I"表示待提取数字水印的数字图像TF的竖直分辨率,J"表示待提取数字水印的数字图像TF的横向分辨率,I"×J"表示待提取数字水印的数字图像TF的分辨率,待提取数字水印的数字图像TF的分辨率与零水印嵌入端嵌入有实际数字水印的数字图像的分辨率相同,tf(i",j")表示待提取数字水印的数字图像TF中坐标位置为(i",j")的像素的像素值;M"表示待提取的实际数字水印W"的竖直分辨率,N"表示待提取的实际数字水印W"的横向分辨率,M"×N"表示待提取的实际数字水印W"的分辨率,待提取的实际数字水印W"的分辨率与零水印嵌入端嵌入的实际数字水印的分辨率相同,w"(m",n")表示待提取的实际数字水印W"中坐标位置为(m",n")的像素的像素值。2-2、对待提取数字水印的数字图像TF进行归一化处理,将归一化处理后得到的数字图像记为TF",将TF"中坐标位置为(i",j")的像素的像素值记为tf"(i",j"),tf"(i",j")=tf(i",j")/255。2-3、对归一化处理后的数字图像TF"进行L"级二维离散小波分解,得到一个第二小波逼近子图和多个第二小波细节子图,将第二小波逼近子图记为TFA,其中,TFA的分辨率为
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="700"/>min()为取最小值函数,max()为取最大值函数,符号“
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="76"/>”表示取小于其自身的最大整数,即该符号为向下取整符号。2-4、对TFA分别进行二维离散余弦变换、二维离散傅里叶变换和二维奇异值分解,对应获得第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S。在此具体实施例中,第四二值数字水印密钥TW
C的获取过程为:a4、对TFA进行二维离散余弦变换,得到一个与TFA相同分辨率的第二二维离散余弦变换系数矩阵,记为TFAC。b4、对TFAC进行Zig-Zag扫描排列,得到一个第二一维离散余弦变换系数序列,记为TFACS,
TFACS = { tfacs ( x ′ ) , 1 ≤ x ′ ≤ ( I ′ 2 L ′ ) × ( J ′ 2 L ′ ) } , ]]>其中,tfacs(x")表示TFACS中的第x"个离散余弦变换系数,TFACS中的第2个离散余弦变换系数开始均为离散余弦变换交流系数。c4、根据零水印嵌入端记录的FACSN中的各个离散余弦变换交流系数在FACS中的对应位置信息,从TFACS中选取出相应位置的M"×N"个离散余弦变换交流系数,构成一个第二一维离散余弦变换交流系数序列,记为TFACSN,TFACSN={tfacsn(y"),1≤y"≤M"×N"},其中,tfacsn(y")表示TFACSN中的第y"个离散余弦变换交流系数。d4、依次比较TFACSN中的相邻两个离散余弦变换交流系数的大小,并根据比较结果返回逻辑值1或0,对于TFACSN中的任意相邻两个离散余弦变换交流系数,将其分别记为tfacsn(z")和tfacsn(z"+1),判断tfacsn(z")>tfacsn(z"+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFACSN中的最后一个离散余弦变换交流系数与第1个离散余弦变换交流系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0。e4、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第四二值数字水印密钥,记为TW
C。在此具体实施例中,第五二值数字水印密钥TW
F的获取过程为:a5、对TFA进行二维离散傅里叶变换,得到一个与TFA相同分辨率的第二二维离散傅里叶变换频谱,记为TFAF。b5、从TFAF中提取出第二二维离散傅里叶变换幅度谱,记为TFAA,TFAA=abs(TFAF),其中,abs()为求幅度函数。c5、对TFAA进行Zig-Zag扫描排列,得到一个第二一维离散傅里叶变换幅度谱系数序列,记为TFAAS,
TFAAS = { tfaas ( x ′ ) , 1 ≤ x ′ ≤ ( I ′ 2 L ′ ) × ( J ′ 2 L ′ ) } , ]]>其中,tfaas(x")表示TFAAS中的第x"个离散傅里叶变换幅度谱系数。d5、根据零水印嵌入端记录的FAASN中的各个离散傅里叶变换幅度谱系数在FAAS中的对应位置信息,从TFAAS中选取出相应位置的M"×N"个离散傅里叶变换幅度谱系数,构成一个新的第二一维离散傅里叶变换幅度谱系数序列,记为TFAASN,TFAASN={tfaasn(y"),1≤y"≤M"×N"},其中,tfaasn(y")表示TFAASN中的第y"个离散傅里叶变换幅度谱系数。e5、依次比较TFAASN中的相邻两个离散傅里叶变换幅度谱系数的大小,并根据比较结果返回逻辑值1或0,对于TFAASN中的任意相邻两个离散傅里叶变换幅度谱系数,将其分别记为tfaasn(z")和tfaasn(z"+1),判断tfaasn(z")>tfaasn(z"+1)是否成立,如果成立则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFAASN中的最后一个离散傅里叶变换幅度谱系数与第1个离散傅里叶变换幅度谱系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0。f5、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第五二值数字水印密钥,记为TW
F。在此具体实施例中,第六二值数字水印密钥TW
S的获取过程为:a6、将TFA分拆成多个互不重叠且大小为U"×V"的第二子方块,其中,U"表示第二子方块的竖直分辨率,V"表示第二子方块的横向分辨率,U"=V",
U ′ × V ′ × M ′ × N ′ = I ′ 2 L ′ × J ′ 2 L ′ . ]]>b6、对TFA中的每个第二子方块进行二维奇异值分解,得到每个第二子方块的二维奇异值矩阵,对于TFA中的第y"个第二子方块的二维奇异值矩阵,将其记为TFAS
y",其中,1≤y"≤M"×N"。c6、按先行后列顺序方式依次选取每个第二子方块的二维奇异值矩阵中的第一个奇异值,构成一个第二一维奇异值系数序列,记为TFASSN,TFASSN={tfassn(y")=TFAS
y"(1,1),1≤y"≤M"×N"},其中,tfassn(y")表示TFASSN中的第y"个奇异值系数,TFAS
y"(1,1)表示TFAS
y"中的第一个奇异值。d6、依次比较TFASSN中的相邻两个奇异值系数的大小,并根据比较结果返回逻辑值1或0,对于TFASSN中的任意相邻两个奇异值系数,将其分别记为tfassn(z")和tfassn(z"+1),判断tfassn(z")>tfassn(z"+1)是否成立,如果成立,则返回逻辑值1,否则,返回逻辑值0,其中,1≤z"≤M"×N"-1;然后比较TFASSN中的最后一个奇异值系数与第1个奇异值系数的大小,如果前者大,则返回逻辑值1,否则,返回逻辑值0。e6、将返回的M"×N"个逻辑值按先行后列顺序排列方式贮存于一个大小为M"×N"的二维矩阵中,将该二维矩阵作为第六二值数字水印密钥,记为TW
S。2-5、对来自零水印嵌入端的第一零水印信息W
RC与第四二值数字水印密钥TW
C进行异或运算,解密得到第一二值数字水印,记为TW
1,TW
1=xor(W
RC,TW
C),对来自零水印嵌入端的第二零水印信息W
RF与第五二值数字水印密钥TW
F进行异或运算,解密得到第二二值数字水印,记为TW
2,TW
2=xor(W
RF,TW
F),对来自零水印嵌入端的第三零水印信息W
RS与第六二值数字水印密钥TW
S进行异或运算,解密得到第三二值数字水印,记为TW
3,TW
3=xor(W
RS,TW
S),其中,xor()为异或运算函数。2-6、对第一二值数字水印TW
1、第二二值数字水印TW
2和第三二值数字水印TW
3分别进行反置乱处理,对应得到第一具有版权认证信息的二值数字水印、第二具有版权认证信息的二值数字水印和第三具有版权认证信息的二值数字水印,分别记为W
1"、W
2"和W
3"。2-7、将W
1"、W
2"和W
3"分别与来自零水印嵌入端的实际数字水印W进行相似度计算,对应得到三个归一化相关系数,再根据三个归一化相关系数或三个归一化相关系数中的最大一个相关系数来判定是否提取出嵌入的实际数字水印以及嵌入的实际数字水印的鲁棒性。在此,步骤2-7的具体过程为:z1、计算W
1"与W的归一化相关系数,将其记为ρ(W,W
1"),
ρ ( W , W 1 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 1 ′ ( m , n ) - w 1 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 1 ′ ( m , n ) - w 1 ′ ‾ ) 2 , ]]>计算W
2"与W的归一化相关系数,将其记为ρ(W,W
2"),
ρ ( W , W 2 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 2 ′ ( m , n ) - w 2 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 2 ′ ( m , n ) - w 2 ′ ‾ ) 2 , ]]>计算W
3"与W的归一化相关系数,将其记为ρ(W,W
3"),
ρ ( W , W 3 ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w 3 ′ ( m , n ) - w 3 ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w 3 ′ ( m , n ) - w 3 ′ ‾ ) 2 , ]]>其中,w(m,n)表示W中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="51"/>表示W中的所有像素的像素值的均值,w
1"(m,n)表示W
1"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="67"/>表示W
1"中的所有像素的像素值的均值,w"
2(m,n)表示W
2"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="71"/>表示W
2"中的所有像素的像素值的均值,w"
3(m,n)表示W
3"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="73"/>表示W
3"中的所有像素的像素值的均值。z2、根据ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")判定是否提取出嵌入的实际数字水印,判断ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")的值是否为1,如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")的值都为1,说明采用任一种水印密钥方式提取出的二值数字水印与嵌入端嵌入的实际数字水印W完全一致,嵌入的实际数字水印W被无损地提取出,提取成功;如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中的某一个或两个的值为1,则说明采用某一种或两种水印密钥方式提取出的二值数字水印与嵌入端嵌入的实际数字水印W完全一致,嵌入的实际数字水印W仍可被无损地提取出,提取成功。如果以上两种情形是嵌入水印后的Lena数字图像受到某种处理或攻击后的提取结果,则说明嵌入的实际数字水印具有抵抗这种处理或攻击的能力,具有理想的鲁棒性。如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")的值都介于δ
T与1之间,即大于或等于δ
T且小于1,则说明采用任一种水印密钥方式提取出的二值数字水印与嵌入端嵌入的实际数字水印W存在一定差异,但两者间具有很大的相似性,这时可以从三种提取结果中辨认出嵌入的实际数字水印,提取成功。相关系数的值越大,提取出的二值数字水印与嵌入端嵌入的实际数字水印越相似,越容易辨认出嵌入的实际数字水印,提取效果越好。其中,δ
T为水印提取门限,一般取值为0.5;如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中的某一个或两个的值介于δ
T与1之间,则说明采用某一种或两种水印密钥方式提取出的二值数字水印与嵌入端嵌入的实际数字水印W存在一定差异,但两者间具有很大的相似性,这时可以从对应的某一种或两种的提取结果中辨认出嵌入的实际数字水印,提取成功。如果以上两种情形是嵌入水印后的Lena数字图像受到某种处理或攻击后的提取结果,说明嵌入的实际数字水印具有比较理想的抵抗这种处理或攻击的能力,具有很好的鲁棒性。如果ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")的值都小于δ
T,则说明采用任一种水印密钥方式提取出的二值数字水印与嵌入端嵌入的实际数字水印W相关性很小,这时已无法从三种提取结果中辨认出嵌入的实际数字水印,提取失败。上述是根据三个相关系数来判定是否提取出嵌入的实际数字水印,在此也可通过最大一个相关系数来判定是否提取出嵌入的实际数字水印,具体过程为:首先找出ρ(W,W
1")、ρ(W,W
2")和ρ(W,W
3")中的最大相关系数,然后根据该最大相关系数判定是否提取出嵌入的实际数字水印,如果该最大相关系数的值为1,则确定W被无损地提取出,如果该最大相关系数的值大于或等于δ
T且小于1,则确定W提取成功,如果该最大相关系数的值小于δ
T,则确定W提取失败,其中,δ
T表示水印提取门限。为了更好地说明本发明提出的一种具有多重密钥的数字图像零水印嵌入和提取方法的可行性和有效性,以三重数字水印密钥为例进行实验验证。实验验证是在Matlab7.5平台上进行的,待嵌入数字水印的原始数字图像F选用8bit的Lena灰度图像,分辨率为512×512,如图1a所示;待嵌入的实际数字水印W选用一个二值序号图像,分辨率为16×64,如图1b所示。实际数字水印W嵌入之前,对待嵌入数字水印的原始数字图像F的像素进行归一化处理,然后对归一化处理后得到的数字图像F"进行2级(针对第三二值数字水印密钥W
S方式)或3级(针对第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式)二维离散小波分解,在二维奇异值分解这一步骤中,子方块大小选择为4×4。嵌入实际数字水印后的数字图像的质量采用峰值信噪比(PSNR)进行评判,
PSNR = - 10 - log 10 ( Σ i = 1 I Σ j = 1 J ( f ( i , j ) - f ′ ′ ( i , j ) ) 2 I × J × f max 2 ) , ]]>其中,f(i,j)表示待嵌入数字水印的原始数字图像F中坐标位置为(i,j)的像素的像素值,f′′(i,j)表示嵌入实际数字水印后的数字图像中坐标位置为(i,j)的像素的像素值,f
max表示待嵌入数字水印的原始数字图像F中最大像素值。数字水印检测结果的客观评价采用归一化相关系数(ρ):
ρ ( W , W ′ ) = Σ m = 1 M Σ n = 1 N ( ( w ( m , n ) - w ‾ ) × ( w ′ ( m , n ) - w ′ ‾ ) Σ m = 1 M Σ n = 1 N ( w ( m , n ) - w ‾ ) 2 × Σ m = 1 M Σ n = 1 N ( w ′ ( m , n ) - w ′ ‾ ) 2 , ]]>其中,w(m,n)表示待嵌入的实际数字水印W中坐标位置为(m,n)的像素的像素值,w"(m,n)表示提取出的实际数字水印W"中坐标位置为(m,n)的像素的像素值,
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="54"/>和
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="62"/>分别表示W和W"中的所有像素的像素值的均值。根据归一化相关系数的大小可以判定是否提取出嵌入的数字水印以及嵌入的数字水印鲁棒性如何。图2a是以第一二值数字水印密钥W
C、第二二值数字水印密钥W
F和第三二值数字水印密钥W
S方式嵌入实际数字水印W后的Lena数字图像。从图2a中可以看到,嵌入实际数字水印后的Lena数字图像质量并没有发生任何变化(PSNR→∞dB),与图1a所示的原始Lena数字图像一致,完全满足了水印不可觉察性要求。图2b、图2c和图2d分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图2a中提取出的实际数字水印。结果表明,图2a所示的嵌入实际数字水印后的Lena数字图像在未受任何攻击处理时,可以完全无损地提取出嵌入的实际数字水印,归一化相关系数ρ都为1。下面对图2a所示的嵌入实际数字水印后的Lena数字图像进行多种攻击处理,来验证本发明提出的具有多重密钥的零水印嵌入和提取方法的鲁棒性。(1)亮度变化对图2a所示的嵌入实际数字水印后的Lena数字图像进行亮度调节处理,即将其所有像素值分别进行加0.2、0.5和减0.2、0.5的运算,得到如图3a、图3b、图3c和图3d所示的水印Lena数字图像。经过图像的像素的像素值加减处理后,从视觉上来看,水印Lena数字图像的亮、暗度发生了明显改变,而峰值信噪比PSNR分别下降至13.97dB、6.02dB、13.97dB和6.02dB。分别以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式对图3a、图3b、图3c和图3d所示的水印Lena数字图像进行实际数字水印提取,提取出的实际数字水印分别如图3e、图3f、图3g、图3h、图3i、图3j、图3k、图3l、图3m、图3n、图3o和图3p所示。结果显示,以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的实际数字水印完全不受数字图像亮度变化的影响,能正确无误地被提取出,归一化相关系数ρ都为1,而以第三二值数字水印密钥W
S方式嵌入的实际数字水印则受到数字图像亮度变化的一定影响,提取出的实际数字水印的归一化相关系数ρ分别为0.991、0.982、0.963和0.186。(2)直方图均衡化对图2a所示的水印Lena数字图像进行直方图均衡化处理,得到如图4a所示的水印Lena数字图像。经过直方图均衡化处理,水印Lena数字图像的像素值分布发生了明显改变,峰值信噪比PSNR下降至19.56dB。图4b、图4c和图4d分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图4a的水印Lena数字图像中提取出的实际数字水印,由结果可知,嵌入的实际数字水印能被很理想地提取出,归一化相关系数ρ分别达到了0.991、0.982和0.927。(3)中值滤波对图2a所示的水印Lena数字图像进行中值滤波处理,滤波器窗口大小分别选择为[5×5]和[11×11],滤波后得到的水印Lena数字图像分别如图5a和图5b所示。图5c、图5d和图5e分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图5a的水印Lena数字图像中提取出的实际数字水印,图5f、图5g和图5h分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图5b的水印Lena数字图像中提取出的实际数字水印。由水印提取结果可知,对于[5×5]小窗口的中值滤波处理,以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的实际数字水印不受任何影响,具有理想的鲁棒性,而对于[11×11]大窗口的中值滤波处理,从图5b中可以看到,这时水印Lena数字图像的细节信息已非常模糊,峰值信噪比PSNR下降至25.83dB,但以三种水印密钥方式嵌入的实际数字水印仍具有比较理想的抗滤波处理能力,归一化相关系数ρ分别达到了0.991、0.988和0.866。表1具体给出了经不同窗口大小中值滤波后的水印Lena数字图像及其水印提取结果。从表1可以看出,本发明方法对于以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的数字水印具有比较理想的抗中值滤波处理能力。表1不同窗口大小中值滤波后的水印Lena数字图像质量及提取结果
![]()
ntent="drawing" img-format="tif" inline="no" orientation="portrait" wi="700"/>(4)JPEG有损压缩对图2a所示的水印Lena数字图像进行JPEG有损压缩处理,压缩质量因子分别为10%和4%,得到的水印Lena数字图像分别如图6a和图6b所示。图6c、图6d和图6e分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图6a的水印Lena数字图像中提取出的实际数字水印,图6f、图6g和图6h分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图6b的水印Lena数字图像中提取出的实际数字水印。由水印提取结果可知,对于压缩质量因子为10%的JPEG有损压缩处理,以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的实际数字水印不受任何影响,具有理想的鲁棒性,而对于压缩质量因子为4%的JPEG有损压缩处理,从图6b中可以看出,这时水印Lena数字图像呈现出非常明显的方块效应,视觉质量发生了严重退化,峰值信噪比PSNR仅为25.92dB,但以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的二值数字水印仍有很理想的抗JPEG有损压缩处理能力,归一化相关系数ρ分别达到了0.997、0.908。表2具体给出了不同JPEG压缩质量因子下的水印Lena数字图像质量及其水印提取结果。从表2可以看出,本发明方法对于以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的数字水印具有非常理想的抗JPEG压缩处理能力,压缩质量因子减小至8%时仍能无差错地提取出所嵌入的实际二值数字水印。表2不同JPEG压缩质量因子下的水印Lena数字图像质量及提取结果
![]()
ntent="drawing" img-format="tif" inline="no" orientation="portrait" wi="700"/>(5)叠加高斯噪声对图2a所示的水印Lena数字图像进行噪声干扰,噪声选用均值为0方差为0.02以及均值为0方差为0.05的两种高斯噪声,得到的水印Lena数字图像分别如图7a和图7b所示。图7c、图7d和图7e分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图7a的水印Lena数字图像中提取出的实际数字水印,图7f、图7g和图7h分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图7b的水印Lena数字图像中提取出的实际数字水印。由水印提取结果可知,尽管水印Lena数字图像受到高斯噪声干扰,视觉质量发生严重退化,峰值信噪比PSNR仅为17.22dB和13.67dB。但对于均值为0方差为0.02的高斯噪声干扰,以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的实际数字水印几乎没有受到任何影响,具有很理想的鲁棒性,而对于均值为0方差为0.05的高斯噪声干扰,以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的实际数字水印仍有很好的抗噪声干扰能力,归一化相关系数ρ分别达到了0.994、0.938。表3具体给出了均值为0不同方差高斯噪声干扰下的水印Lena数字图像质量及其水印提取结果。从表3可以看出,本发明方法对于以第一二值数字水印密钥W
C和第二二值数字水印密钥W
F方式嵌入的实际数字水印具有比较理想的抗噪声干扰能力。表3不同高斯噪声强度下的水印Lena数字图像质量及提取结果
![]()
ntent="drawing" img-format="tif" inline="no" orientation="portrait" wi="700"/>(6)几何切割对图2a所示的水印Lena数字图像进行几何切割,自左上角开始分别切去128×128和256×256个像素点,得到如图8a和图8b所示的水印Lena数字图像。图8c、图8d和图8e分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图8a的水印Lena数字图像中提取出的实际数字水印,图8f、图8g和图8h分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图8b的水印Lena数字图像中提取出的实际数字水印。由水印提取结果可知,尽管水印Lena数字图像受到较大程度的破坏,峰值信噪比PSNR仅为17.29dB和11.14dB,但本发明方法对于几何切割具有比较好的鲁棒性,嵌入的实际数字水印仍能被很好地提取出来,归一化相关系数ρ分别达到了0.972、0.761和0.939以及0.883、0.658和0.756。(7)几何旋转对图2a所示的水印Lena数字图像进行逆时针方向旋转,角度分别为5度和25度。为了提取水印,将旋转后的图像再反向旋转,以恢复原方向,这时得到的水印Lena数字图像分别如图9a和图9b所示,其峰值信噪比PSNR为19.10dB和13.80dB。图9c、图9d和图9e分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图9a的水印Lena数字图像中提取出的实际数字水印,图9f、图9g和图9h分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图9b的水印Lena数字图像中提取出的实际数字水印。由水印提取结果可知,本发明方法对于几何旋转攻击也有一定的鲁棒性,嵌入的实际数字水印仍能被提取出来,归一化相关系数ρ分别达到了0.829、0.673和0.915以及0.751、0.518和0.786。(8)几何平移对图2a所示的水印Lena数字图像分别向右水平方向平移1/8和1/4区域,得到的水印Lena数字图像分别如图10a和图10b所示。图10c、图10d和图10e分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图10a的水印Lena数字图像中提取出的实际数字水印,图10f、图10g和图10h分别是以第四二值数字水印密钥TW
C、第五二值数字水印密钥TW
F和第六二值数字水印密钥TW
S方式从图10b的水印Lena数字图像中提取出的实际数字水印。由水印提取结果可知,本发明方法对于以第二二值数字水印密钥W
F方式嵌入的数字水印具有平移攻击免疫性,可以完全提取出嵌入的实际数字水印。通过上述一系列实验仿真,揭示了本发明提出的一种具有多重密钥的数字图像零水印嵌入和提取方法的有效性。通过多重密钥方式嵌入数字水印,既可以提高数字水印的安全性,增加数字水印密钥被逐一破解的难度,同时又可以提高数字水印的鲁棒性,抵抗常规的数字图像处理和几何攻击。例如,以第一二值数字水印密钥W
C方式嵌入的实际数字水印对于噪声干扰、JPEG有损压缩和亮度变化具有非常理想的鲁棒性,以第二二值数字水印密钥W
F方式嵌入的实际数字水印对于几何平移、JPEG有损压缩和亮度变化具有非常理想的鲁棒性,而以第三二值数字水印密钥W
S方式嵌入的实际数字水印对于几何切割和几何旋转又有相对较好的鲁棒性。